home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / src / cmds / migrate / migrate.man < prev   
Text File  |  1991-04-03  |  5KB  |  104 lines

  1. ' $Header: /sprite/src/cmds/migrate/RCS/migrate.man,v 1.8 91/04/03 12:20:01 kupfer Exp $ SPRITE (Berkeley)
  2. .so \*(]ltmac.sprite
  3. .HS MIGRATE cmds
  4. .BS
  5. .SH NAME
  6. migrate \- Migrate a command to another machine
  7. .SH SYNOPSIS
  8. \fBmigrate\fR [\fB\-BbvlD\fR] [[\fB\-h \fIhost\fR] | [\fB\-H \fIhostID\fR]] [\fB\-p \fIprocessID\fR] [(\fB\-E \fIcmd\fR arg0 | \fIcmd\fR) \fIargs ...\fR]
  9. .BE
  10. .SH INTRODUCTION
  11. This command is used to execute commands remotely using the Sprite process
  12. migration facility.  It may be used to execute commands on a
  13. particular machine or to select from idle machines; and it may execute
  14. a command specified by the arguments to the \fBmigrate\fR program, or an
  15. interactive shell. 
  16. .SH "SELECTING A HOST"
  17. .IP "\fB\-B\fR"
  18. The \fB\-B\fR specifies that the host should be selected at
  19. ``background'' priority, rather than at the priority used for other
  20. tasks such as compilations.
  21. .IP "\fB\-h\fR"
  22. .IP "\fB\-H\fR"
  23. By default, a host is selected from among the idle hosts
  24. available on the local network.  This host is then marked as being in
  25. use for the duration of the command being executed; the host will not
  26. be chosen for remote execution of other processes in the meantime.  If
  27. a host is specified with the \fB\-h\fR or \fB\-H\fR options, then the
  28. ``in-use'' flag 
  29. is bypassed; this is useful when invoking \fBmigrate\fR as a ``remote
  30. login'' facility to execute commands directly on another host.   The
  31. \fB\-h\fR flag specifies a host by name, and the \fB\-H\fR flag
  32. specifies it by spriteID (thereby bypassing the host database lookup
  33. to convert from name to internal numeric identifier).
  34. .IP "\fB\-l\fR"
  35. If no host is specified and no idle host is available, the
  36. command is not executed unless the \fB\-l\fR option is specified, in
  37. which case the command is executed locally.   The ``\fB\-l\fR'' option similiarly
  38. affects the disposition of the command if migrating to the other host fails.
  39. .SH "EXECUTING A COMMAND"
  40. .PP
  41. To execute a single command remotely, the command may be specified by
  42. placing the command and its arguments after any options to \fBmigrate\fR.
  43. If no command is specified, an interactive shell is created.  If the
  44. \fBSHELL\fR environment variable is present, that shell is invoked,
  45. otherwise \fBcsh\fP is invoked.  In any case, the exit status from the
  46. subprocess is returned by \fBmigrate\fR.
  47. .IP "\fB\-E \fI command\fR"
  48. In some circumstances, programs may be invoked with \fBargv[0]\fR
  49. different from the name of the command.  In this case, 
  50. the \fB-E\fR option may be used to specify the name of a file to
  51. execute, and the first argument after the option list specifies the
  52. value of \fBargv[0]\fR.   Otherwise, \fBargv[0]\fR is set to the name
  53. of
  54. the command that is invoked.  
  55. .SH "MIGRATING A CURRENT PROCESS"
  56. .IP "\fB\-p\fR"
  57. To migrate a process that is already executing, invoke \fBmigrate\fR
  58. with the \fB\-p\fR option, giving the process ID of the process to
  59. migrate (in hex notation).  Each process must be migrated
  60. individually, in separate runs of \fBmigrate\fR.
  61. .SH "OTHER OPTIONS"
  62. .IP "\fB\-b\fR"
  63. The \fB\-b\fR option may be used to enter ``background mode'', in
  64. which \fBmigrate\fP executes a command and returns immediately, printing
  65. the process identifier of the migrated child.  Thus,
  66. .ce 1
  67. \fBmigrate xyzzy&\fP
  68. is different from
  69. .ce 1
  70. \fBmigrate -b xyzzy\fP.
  71. The process identifier for the former case is printed by the
  72. shell, and it corresponds to the \fBmigrate\fP process; while the process
  73. identifier in the latter case corresponds to the migrated child
  74. itself.  In the former case, normal \fBcsh\fP job control may be used
  75. to foreground and background the migrated child, but in the latter
  76. case, the process is not controlled by \fBcsh\fP.  
  77. .IP "\fB\-v\fR"
  78. The \fB\-v\fR option may be used to enter ``verbose mode'', in which
  79. case the host selected for migration is printed, or a message that no
  80. host could be selected is printed if the command is executed locally
  81. due to the \fB\-l\fR option.
  82. .IP "\fB\-D\fR"
  83. The \fB\-D\fR option enables ``debug mode'', which causes various
  84. debugging statements to be printed as the program executes.
  85. .SH "SEE ALSO"
  86. migrate, db, xload, pmake, loadavg, csh, ps
  87. .SH FILES
  88. \fB/sprite/admin/data/migInfo\fR - the global migration database file.
  89. .SH KEYWORDS
  90. process migration, load average, uptime, idle time, database, remote execution
  91. .SH BUGS
  92. If a process that is executing remotely is evicted when that
  93. machine is no longer available, the process will continue to execute
  94. locally.  This is nearly completely transparent to the user (\fBps
  95. -m\fR will no longer show the process as migrated).  Even if the host
  96. were not selected as an ``idle host'', the migrated process can be
  97. evicted if the other host goes from being available to being unavailable.
  98. .PP
  99. If another host is selected at random to migrate a process that is already 
  100. running, when that process exits the remote host, the remote host will remain
  101. flagged as ``in use'' for a short period of time.  This is because the
  102. \fBmigrate\fR
  103. process cannot conveniently wait for a process that isn't its child.
  104.